package xyz.lwm.lazycat.netpipe.domain.entity;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.keygen.KeyGenerators;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @author lwm
 */
@Data
@Table(value = "proxy_config", comment = "代理配置表")
@EqualsAndHashCode(callSuper = false)
public class ProxyConfig extends BaseEntity {

    /**
     * 用户ID
     */
    @Id(keyType = KeyType.Generator, value = KeyGenerators.ulid)
    @Column(value = "id", comment = "配置ID")
    private String id;

    /**
     * 代理类型
     */
    @Column(value = "proxy_type", comment = "代理类型")
    private int proxyType;

    /**
     * 代理端口
     */
    @Column(value = "proxy_port", comment = "代理端口")
    private int proxyPort;

    /**
     * 本地端口
     */
    @Column(value = "local_port", comment = "本地端口")
    private int localPort;

    /**
     * 本地IP
     */
    @Column(value = "local_ip", comment = "本地IP")
    private String localIp;

    /**
     * 描述
     */
    @Column(value = "description", comment = "描述")
    private String description;

    /**
     * 用户ID
     */
    @Column(value = "user_id", comment = "用户ID")
    private String userId;

}
